package com.hmall.trade.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hmall.trade.domain.dto.OrderFormDTO;
import com.hmall.trade.domain.po.Order;

/**
 * 订单服务接口
 * 定义订单相关业务操作，继承MyBatis-Plus的IService接口
 */
public interface IOrderService extends IService<Order> {

    /**
     * 创建订单
     * @param orderFormDTO 订单表单DTO，包含订单基本信息和商品详情
     * @return 订单ID
     */
    Long createOrder(OrderFormDTO orderFormDTO);

    /**
     * 标记订单支付成功
     * @param orderId 订单ID
     */
    void markOrderPaySuccess(Long orderId);

    /**
     * 取消订单
     * @param orderId 订单ID
     */
    void cancelOrder(Long orderId);
}